#ifndef NMC_UTIL_HPP
#define NMC_UTIL_HPP

template <typename T>
T clamp(T a, T min, T max)
{
	if (a < min)
	{
		return min;
	}
	if (a > max)
	{
		return max;
	}

	return a;
}

template <typename T>
T min(T a, T b)
{
	if (a < b)
	{
		return a;
	}

	return b;
}

template <typename T>
T max(T a, T b)
{
	if (a > b)
	{
		return a;
	}

	return b;
}

#endif